package com.sikaryofficial.backend.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sikaryofficial.backend.domain.dto.req.store.StoreCommentReplyListReq;
import com.sikaryofficial.backend.domain.dto.resp.StoreCommentReplyDTO;
import com.sikaryofficial.backend.domain.entity.StoreCommentReply;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sikaryofficial.backend.domain.vo.EvaluateReplyCount;
import com.sikaryofficial.backend.domain.vo.store.CommentReplyCount;

import java.util.List;


public interface IStoreCommentReplyService extends IService<StoreCommentReply> {

	/**
	 * 根据评论ID查询回复数量
	 * @param commentIds 评论ID列表
	 * @param userId 用户ID
	 * @return 回复数量
	 */
	List<CommentReplyCount> countByCommentId(List<Long> commentIds, Long userId);

	/**
	 * 根据评论ID查询回复列表
	 * @return 回复列表
	 */
	IPage<StoreCommentReplyDTO> replyList(Page<StoreCommentReplyDTO> customerPage, StoreCommentReplyListReq req);

	/**
	 * 根据评论ID查询回复列表
	 * @param commentIds 评论ID列表
	 * @param limitNum 回复数量
	 * @param userId 用户ID
	 * @return 回复列表
	 */
	List<StoreCommentReplyDTO> queryByCommentId(List<Long> commentIds, int limitNum, Long userId);

}